package cn.huapu.power.energy.service;


import cn.huapu.power.energy.vo.Grid;
import cn.huapu.power.energy.vo.Page;

import java.util.List;

/**
 * 基本服务接口，只针对数据库方面的操作，不是系统对外的服务接口
 * @author hunter
 *
 * @param <T>
 */
public interface BaseService<T,K> {
	/**
	 * 追加数据，返回插入的记录数
	 * @param t
	 * @return
	 */
	int insert(T t);
	/**
	 * 修改数据，返回修改的记录条数
	 * @param t
	 * @return
	 */
	int update(T t);
	/**
	 * 删除记录，返回删除的记录数
	 * @param id
	 * @return
	 */
	int remove(K id);
	/**
	 * 获取单条数据
	 * @param id
	 * @return
	 */
	T get(K id);
	/**
	 * 获取列表数据
	 * @param t 查询参数
	 * @return
	 */
	List<T> queryList(T t);
	
	/**
	 * 分页获取列表数据
	 * @param t 查询参数
	 * @return
	 */
	Grid<T> queryListByPage(Page page, T t);
	/**
	 * 根据序号以","连接的字符串获取记录集
	 * @param
	 * @return
	 */
	List<T> queryListByIds(String ids);

}
